import { http } from '@kit.NetworkKit'
let request = http.createHttp()
request.request("")

export function get<T>(url:string, data?:object):Promise<T> { // 封装 get请求 - 访问数据； url：请求的目标地址（字符串）， data：要附加到 URL 的查询参数对象
  return new Promise<T>((resolve, reject) => {
    if(data) {
      url += '?' + Object.keys(data).map((k) => `${k}=${data[k]}`).join('&') // 拼接地址 - 访问具体数据时
    }
    request.request(url)
      .then((response) => {
        if(response.responseCode == 200) {
          let res:T = JSON.parse(response.result.toString()) // 解析数据 并接收
          resolve(res)
        } else {
          reject(new Error(`网络错误：${response.responseCode}`))
        }
      })
      .catch((e:Error) => {
        reject(e)
      })
  })
}